﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    public class Monitor
    {
        public delegate void NotifyDelegate();//委托本质上是一个类

        //委托的实例，谁想被通知，谁就注册到该委托实例。【增加event关键字，变为事件】
        //事件只能被当前类中的对象调用.(其它类对象不能调用当前类中的event)
        public event NotifyDelegate Notify;

        //发现Boss，通知订阅者们。
        public void Broadcast()
        {
            if(Notify != null)
                Notify.Invoke();
        }
    }
}
